package io.framework.modules.security.service;

import io.framework.common.service.BaseService;
import io.framework.common.utils.Result;
import io.framework.modules.security.entity.SysUserTokenEntity;
import io.framework.modules.sys.dto.SysUserDTO;

/**
 * 用户Token
 * 
 *
 */
public interface SysUserTokenService extends BaseService<SysUserTokenEntity> {

	/**
	 * 生成token
	 * @param userId  用户ID
	 */
	Result createToken(Long userId ,String flag);

	/**
	 * 退出，修改token值
	 * @param userId  用户ID
	 */
	void logout(Long userId);

	/**
	 * 获取Token信息
	 * @param token
	 * @return
	 */
	SysUserTokenEntity getByToken(String token);

	/**
	 *  根据 token 获取用户信息
	 * @param token
	 * @return
	 */
	SysUserDTO getUserInfobytoken(String token);
}